package com.caeit.service.bigscreen

import com.caeit.model.bigscreen.BigscreenConfig
import com.caeit.service.bigscreen.dto.BigscreenConfigQuery
import org.springframework.data.domain.Pageable

/**
 * 业务应用表;(bigscreen_config)表服务接口
 *
 * @author : chenyr
 * @date : 2022-8-22
 */
interface BigscreenConfigService {

    /**
     * 分页查询
     *
     * @param BigscreenConfigQuery 筛选条件
     * @param Pageable 分页
     * @return
     */
    fun paginQuery(query: BigscreenConfigQuery, pageable: Pageable): Map<String, Any?>

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    fun queryById(id: Long): BigscreenConfig

    /**
     * 保存数据
     *
     * @param BigscreenConfig 实例对象
     * @return 实例对象
     */
    fun save(resource: BigscreenConfig): Boolean

    /**
     * 编辑数据
     *
     * @param BigscreenConfig 实例对象
     * @return 实例对象
     */
    fun edit(resource: BigscreenConfig): Boolean

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return
     */
    fun deleteById(id: Long): Boolean

    /**
     * 获取所有数据
     */
    fun findAll(): List<BigscreenConfig>

    /**
     * 获取启用数据
     *
     * @return 实例对象
     */
    fun queryEnableData(): BigscreenConfig
}